package magazijn;
/**
 * Write a description of class test here.
 * 
 * @author (Joep, Jochem, Johannes, Daniel) 
 * @version (v0.1)
 */

import java.util.*;
import java.sql.*;
import java.io.*;
  
public class Categorie{
    BufferedReader toetsenbord = new BufferedReader( new InputStreamReader( System.in) );
    //Database database = new Database();
    
    public String categorienaam;
    public int categorieid;
       
    public Categorie(int categorieid, String categorienaam){
        this.categorieid  = categorieid;
        this.categorienaam    = categorienaam;
        
        insertCategorieData(categorieid, categorienaam);
    }
         
    
    public Categorie(int ID){
        this.categorieid = ID;
        getCategorieData();
    }
    
    /**============= GETTERS ==============**/
    
    public String getCategorieNaam(){
        return categorienaam;
    }
    public int getCategorieID(){
        return categorieid;
    }
       
    /**============= SETTERS ==============**/

    public void setCategorieNaam(String eenCategorieNaam)
    {
        categorienaam = eenCategorieNaam;
        setCategorieData();
    }

   
    /**============= PRINT Categorie ==============**/
    
    public void printCategorie() {
        System.out.println( toString() + "\n" );
    }

    public String toString() //
    {
       
        String a = String.format("%-11d %-20s", categorieid, categorienaam);
        return a;
       
    }
/**======================================================    **/
    public void getCategorieData()
    {
        try{
            ResultSet rs = Database.executeSQLStatement("SELECT * FROM categorieen WHERE categorieid="+categorieid); // Selecteer alles van de tabel scores order op aantal en haal 10 rijen uit de database
            while (rs.next ()) 
            {
                categorienaam  = rs.getString("categorienaam");
                categorieid    = rs.getInt("categorieid");
            }
            rs.close();                   
        }
        catch(Exception e)
        { 
            e.printStackTrace();
        }
    }         
    
/** =================================================== **/
    public void setCategorieData()
    {
        try{
            String sql = ("UPDATE categorieen set categorienaam= '" + categorienaam + "' WHERE categorieid='"+ categorieid+"'");
            Database.executeUpdateStatement( sql );
        }
        catch (Exception e){
            System.out.println("De gegevens zijn niet gewijzigd in de db");
            e.printStackTrace();
        }
    }
       
    public static void insertCategorieData( int categorieid, String categorienaam)
    {
         try{
            String sql = ("INSERT into categorieen set categorienaam= '" + categorienaam + "'");
            Database.executeUpdateStatement( sql );
        }
        catch (Exception e){
            System.out.println("De gegevens zijn niet gewijzigd in de db");
            e.printStackTrace();
        }
    }
    
    public void delCategorielData(int categorieid)
    {
         try{
            String sql = ("DELETE from categorieen WHERE categorieid="+ categorieid);
            Database.executeUpdateStatement( sql );
        }
        catch (Exception e){
            System.out.println("De Categorie is niet verwijderd");
            e.printStackTrace();
        }
    }
        
        
       
}
